/*
 * To change this license header, choose License Headers in Project Properties.
 * To change this template file, choose Tools | Templates
 * and open the template in the editor.
 */
package persistencia;

import java.sql.Connection;
import java.util.Collection;
import modelo.Categoria;

/**
 *
 * @author Felipe
 */
public class CategoriaBean {

    private CategoriaDAO dao;
    private ProductoDAO prodDAO;

    public CategoriaBean(Connection conexion) {

        dao = new CategoriaDAO();
        dao.setConexion(conexion);
        prodDAO = new ProductoDAO();
        prodDAO.setConexion(conexion);
    }

    public int modificar(Categoria cate) {
        int exito = 0;
        Categoria registro = dao.buscarPorNombre(cate.getNombre());
        if (registro != null) {
            if (registro.getCodCategoria() == cate.getCodCategoria()) {

                exito = 0 ;
            } else {
                exito = 1;
                return exito;
            }
        }

        dao.modificar(cate);

        return exito;
    }

    public int insertar(Categoria cate) {
        int exito = 0;
        Categoria registro = dao.buscarPorNombre(cate.getNombre());
        if (registro != null) {
            exito = 1;
            return exito;
        }
        int cod = dao.getCodCate();
        System.out.println(cod + 10);
        cate.setCodCategoria(cod + 10);
        dao.Insertar(cate);

        return exito;
    }

    public Collection<Categoria> buscarTodos() {

        Collection<Categoria> categorias = dao.buscarTodos();

        return categorias;

    }

    public Categoria buscarPorCodigo(int codigo) {
        Categoria cate = new Categoria();
        cate = dao.buscar(codigo);
        return cate;
    }

    public Categoria buscarPorNombre(String nombre) {
        Categoria cate = new Categoria();
        cate = dao.buscarPorNombre(nombre);
        return cate;
    }

    public int eliminar(int codigo,boolean estado) {
        int exito = 1;
        Categoria cate = dao.buscar(codigo);
        if (cate != null) {
            dao.eliminar(codigo,estado);
            exito = 0;
        }
        return exito;
    }

}
